ルータを通した2個所のパソコン同士でWINDOWSサービスを使う場合の問題点


Q.どんな問題が起きるのか? 〜問題解決に向けて

使っていないのに不正に回線をつないで通信を行ってしまう現象が派生します。

この問題を考えるのには、大きく2つの事項について考慮する必要があります。

  1. インターネットに接続する場合
  2. LAN間接続でWindowsサービスを利用する場合
    「マイクロソフト共有サービス」と「NTへのドメインへの参加」

  1. Windowsパソコンのネットワークについての考察
    □NetBIOS
    1. WINDOWSパソコンは、WINDOWSサービスを利用するための通信方式として「NetBIOS」が使われます。
      「NetBIOS」では、宛先の認識に「NetBIOS名」が使われ、これには「コンピュータ名」が使われます。

      NetBIOS名の確認

      nbtstat -n

    2. 他のパソコンと通信する場合、相手の「NetBIOS名」を使いますが、通信プロトコルに「TCP/IP」を 使っている場合は。「NetBIOS名」から「IPアドレス」を知る必要があります。これを「NetBIOS名前解決」 と言います。

    ■マイクロソフトTCP/IPの構造
    ソケットアプリケーション
    FTP/HTTP/SMTP
    NetBIOSアプリケーション
    WINDOWS SocketsNetBIOS
    TCP or UDP
    IP
    LAN or WAN

    ■NetBIOSの使用ポート番号
    ポート番号機能
    UDPポート137NetBIOSの名前解決
    UDPポート138ログオン認証要求
    TCPポート139ログオン認証処理

    □NetBIOS名前解決
    NetBIOSの名前解決には以下の優先順位で行われます。

    1. NetBIOSキャッシュ(解決済みNetBIOSは10分間保存される)

      NetBIOSキャッシュの確認

      nbtstat -c

    2. ノードタイプ
      ■ノードタイプ別名前解決の方法
      拡張ノード
      default
      b nodep nodem nodeh node
      NetBIOSキャッシュ
      ブロードキャストブロードキャストWINSサーバb nodep node
      LMHOSTS p nodeb node

      ■ノードタイプの確認

      ノードタイプの確認

      winipcfg

      □レジストリで確認
      HKEY_LOCAL_MACHINE\
      SYSTEM\CurrentControlSet\Services\VxD\MSTCP:NodeType

      Type winipcfg
      表示
      Registry
      b-node (Broadcast)ブロードキャスト1
      p-node (Point-to-point)ポイント...2
      m-node (Mixed)複合4
      + Windows 95 はさらに以下が追加
      h-node (Hybrid)ハイブリッド8

    3. ローカルLMHOSTS
    4. DNS or HOSTSファイル(DNS参照指定時)

  2. ルータを越えるネットワーク
    各接続条件にあわせて以下の設定を行います。
    1. パソコンはインターネット接続でのみ使う
      TCP/IPプロトコルで「NetBIOS」のチェックをはずす
      または、「Maicrosoftネットワーククライアント」と「Microsoftネットワーク共有サービス」を「現在のネットワーク構成」 に登録しない。
    2. インターネット接続で使い、ルータ内ではWindowsサービスを利用する
      インターネットの接続で使う場合などで、「共有サービス」などのWinodwsサービスを ルータを越えた場所にあるパソコンと使う必要が無ければ、ルータで「NetBIOS」のサービス ポート番号を規制します。
      規制するポート番号は
      UDPポート137NetBIOSの名前解決in/out
      UDPポート138ログオン認証要求in/out
      TCPポート139ログオン認証処理in/out

    3. LAN間のPCで「共有サービス」または、NTにログオンします
      DNSを使わない設定にします。
      ルータを越えた先にWINSサーバがある場合はそのWINSサーバを参照しない
      この場合、 「WINS設定」では、「WINSの解決をしない」にチェックを入れる
      「DNS設定」では  「DNSを使わない」にチェックを入れる
      名前解決にLMHOSTSファイルをwindowsフォルダー内に作成する
      LMHOSTファイルの内容
      192.168.1.254 PDC-SERVER #PRE #DOM:DOMAIN
      192.168.1.101 WS01
      192.168.2.101 WS11
    4. インターネットの接続及びLAN間接続でつかう
      NetBIOSの名前解決にLMHOSTSを使うように全パソコンに登録する必要があります。
      レジストリを操作してNetBIOSの名前解決にDNSを使わないように設定します。
      しかし、インターネット目的でDNSが必要ですので、「DNS設定」では「DNSを使う」設定で登録します。
      これでは、NetBIOSの名前解決でもDNSを使用するように設定されてしまいます。そこでレジストリーを操作して
      Microsoftサービスでは、DNSを参照しないようにします。
      regedit.exe コマンドで、以下のレジストリキー を開きます。
      HKEY_LOCAL_MACHIN\System\CurrentControlSet\Services\VxD\MSTCP
      EnbaleDNS エントリ値を 1 から 0 に設定し直し、Windowsの再起動を行ないます
      [コントロールパネル]→[ネットワー ク]→[現在のネットワーク構成]→[TCP/IP]→[DNS設定]
      で表示される内容も「DNS を使わない」になりますが気にしないでください。